Sistema de Nombrado en Java (JNDI) [Parte I]

Un Enlace de referencia es un enlace simb�lico que puede expandir m�ltiples sistemas de nombres. Est� representado por la clase LinkRef.

Contiene un string URL o un nombre mixto. Si el primer componente del nombre mixto es el string "." (un string que contiene un caracter punto (".")), el nombre mixto se resolver� en relaci�n al contexo al que se uni� el enlace de referencia. De otra forma, la URL o el nombre mixto ser�n resueltos en relaci�n al contexto inicial.

.�Relaci�n para Operaciones de Contexto

Podemos unir un enlace de referencia, igual que cualquier otro objeto, con un contexto usando Context.bind() y sus m�todos relacionados. El proveedor de servicios debe soportar los objetos Reference y Referenceable.

Cuando realizamos una Context.lookup() u otra operaci�n de contexto que involucre al enlace de referencia, �ste ser� des-referenciado autom�ticamente.

Por ejemplo, supongamos que tenemos el siguiente nombre mixto en el contexto inicial.

some/where/over/there

Creamos un enlace de referencia para "some/where" y lo unimos al nombre "here" en el contexto inicial. Despu�s si listamos el contexto usando el nombre "here/over/there" es efectivamente lo mismo que usar el nombre "some/where/over/there".

Un enlace de referencia no se des-referencia s�lo cuando usamos Context.lookupLink().

En este caso, se devuelve un enlace de referencia unido al componente terminal de un nombre mixto sin ser des-refernciado. En el ejemplo anterior, si utilizamos esta sentencia.

Object obj = ctx.lookupLink("here");

el resultado ser� un LinkRef que contiene el nombre mixto "some/where".

Si el nombre que hemos suministrado a lookupLink() contiene un componente unido a un enlace de referencia como un componene no-terminal, el enlace de referencia si que ser� des-referenciado. En el ejemplo anterior, si usamos esta sentencia.

Object obj = ctx.lookupLink("here/over/there");

El resultado ser� el objeto unido a "some/where/over/there".

Nota:

El soporte para enlaces de referencias est� implementado por el proveedor de servicios. Ninguno de los proveedores de sevicos LDAP o del sistema de ficheros de Sun soporta actualmente los enlaces de referencias.

.�Relac�on con Alias, Referrals, Referencias URL, y otros Enlaces Simb�licos

Los enlaces simb�licos son muy comunes en sistemas de nombres y directorios.

Por ejemplo, el sistema de ficheros UNIX soporta enlaces simb�licos para ficheros y directorios, el LDAP soporta alias y referrals, y el JNDI soporta referencias URL (ver la lecci�n URLs).

El enlace de referencia del JNDI difiere de todas estas.

Un alias LDAP es una entrada LDAP que contiene un nombre distinguido de otra entrada LDAP en el mismo servidor LDAP. Los servidores LDAP son responsables de des-refenciar los alias. Un enlace de referencia difiere de un alias enque no es espec�fico de LDAP y puede nombrar objetos fuera del espacio de nombres o del servidor LDAP. Al contrario que los alias, un enlace de referencia es procesado en el lado del cliente (por el proveedor de servicios).

Un referral LDAP es una entrada que contiene la URL de otra entrada LDAP, posiblemente en otro servidor LDAP. La URL no necesita ser una URL LDAP, pero la entrada que nombra debe ser una entrada LDAP. Los clientes LDAP son responsables de des-referenciar las referrals. Un enlace de referencia difiere de un referral en que no es espec�fico de LDAP. No necesita nombrar otra entrada LDAP. Un enlace de referencia puede ser relativo, es decir, puede nombrar otro objeto en relaci�n al contexto en el que se uni� el enlace de referencia. Un referral siempre contiene una URL absoluta.

Un enlace simb�lico UNIX contiene un nombre relativo o absoluto a un fichero o directorio. Difiere de los enlaces de referencia en que s�lo puede nombrar otro objeto o directorio.

Un enlace de referencia difiere de una referencia URL en que est� expl�citamente tipado y dise�ado para soportar enlaces, mientras que una referencia URL est� pensada para soportar federaciones. Las referencias URL son procesadas por implementaciones/factor�as de contexto URL. Los enlaces de referencia son soportados por los proveedores de servicios que son los responsables de des-refereniarlos y de realizar el bucle de enlaces y de detectar los l�mites del enlace.

COMPARTE ESTE ARTÍCULO

COMPARTIR EN FACEBOOK
COMPARTIR EN TWITTER
COMPARTIR EN LINKEDIN
COMPARTIR EN WHATSAPP
SIGUIENTE ARTÍCULO